package com.papers.system.domain.bo;

import com.papers.common.core.domain.BaseEntity;
import com.papers.common.core.validate.AddGroup;
import com.papers.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 课程业务对象 t_juan_course
 *
 * @author papers
 * @date 2022-10-12
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TJuanCourseBo extends BaseEntity {

    /**
     * ID
     */
    @NotBlank(message = "ID不能为空", groups = { EditGroup.class })
    private String courseId;

    /**
     * 专业ID
     */
    // @NotBlank(message = "专业ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private String majorId;

    /**
     * 院系ID
     */
    // @NotBlank(message = "院系ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private String departId;

    /**
     * 院系名称
     */
    private String departName;

    /**
     * 专业名称
     */
    private String majorName;

    /**
     * 课程代码
     */
//    @NotBlank(message = "课程代码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseCode;

    /**
     * 课程名称
     */
    @NotBlank(message = "课程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseSubject;

    /**
     * 课程类型
     */
//    @NotBlank(message = "课程类型不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseType;

    /**
     * 年级
     */
//    @NotBlank(message = "年级不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseConstruction;

    /**
     * 学期
     */
//    @NotBlank(message = "学期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseCount;

    /**
     * 课时
     */
//    @NotNull(message = "课时不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseHierarchy;

    /**
     * 课程描述
     */
//    @NotBlank(message = "课程描述不能为空", groups = { AddGroup.class, EditGroup.class })
    private String courseDes;

    /**
     * 创建人
     */
    //@NotBlank(message = "创建人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String createdBy;

    /**
     * 创建时间
     */
    //@NotNull(message = "创建时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date createdTime;

    /**
     * 更新人
     */
    //@NotBlank(message = "更新人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String updatedBy;

    /**
     * 更新时间
     */
    //@NotNull(message = "更新时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date updatedTime;
    /**
     * 课程名
     */
    private String course;
    /**
     * 部门id
     */
    private String department;

    private String person;
}
